package org.dromara.project.domain.vo;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.dromara.project.domain.ProjectInfo;
import cn.idev.excel.annotation.ExcelIgnoreUnannotated;
import cn.idev.excel.annotation.ExcelProperty;
import org.dromara.common.excel.annotation.ExcelDictFormat;
import org.dromara.common.excel.convert.ExcelDictConvert;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;

import java.io.Serial;
import java.io.Serializable;
import java.util.Date;



/**
 * 项目信息视图对象 project_info
 *
 * @author Lion Li
 * @date 2025-06-23
 */
@Data
@ExcelIgnoreUnannotated
@AutoMapper(target = ProjectInfo.class)
public class ProjectInfoVo implements Serializable {

    @Serial
    private static final long serialVersionUID = 1L;

    /**
     * 唯一标识
     */
    @ExcelProperty(value = "唯一标识")
    private Long id;

    /**
     * 项目名称
     */
    @ExcelProperty(value = "项目名称")
    private String projectName;

    /**
     * 建设地点
     */
    @ExcelProperty(value = "建设地点")
    private String constructionLocation;

    /**
     * 业主单位
     */
    @ExcelProperty(value = "业主单位")
    private String ownerUnit;

    /**
     * 合同金额
     */
    @ExcelProperty(value = "合同金额")
    private String contractAmount;

    /**
     * 签署时间
     */
    @ExcelProperty(value = "签署时间")
    private Date signingDate;

    /**
     * 客户邮箱
     */
    @ExcelProperty(value = "客户邮箱")
    private String customerEmail;

    /**
     * 项目状态
     */
    @ExcelProperty(value = "项目状态")
    private String projectStatus;

    /**
     * 项目经理id
     */
    @ExcelProperty(value = "项目经理id")
    private Long projectManagerId;

    /**
     * 项目经理名称
     */
    @ExcelProperty(value = "项目经理名称")
    private String projectManagerName;

    /**
     * 备注信息
     */
    @ExcelProperty(value = "备注信息")
    private String remarks;

    /**
     * 拒绝原因
     */
    @ExcelProperty(value = "拒绝原因")
    private String refReason;

    /**
     * 审批人
     */
    @ExcelProperty(value = "审批人")
    private String approver;

    /**
     * 审批人
     */
    @ExcelProperty(value = "审批人")
    private Long approvername;

    /**
     * 审批时间
     */
    @ExcelProperty(value = "审批时间")
    private Date approveTime;


}
